using System;
using Microsoft.SPOT;
using System.Diagnostics;

   
public static class Debugger
{
    // I use "Debugger" instead of Debug to avoid conflicting with the Debug Class and avoid a bunch of new namespace declarations everywhere

    /// <summary>
    /// Determines how much debugging info prints out.  False is minimal, true is the most (aka. the kitchen sink)!  
    /// </summary>
    public static bool Verbose = false;

    /// <summary>
    /// This Print statement will be compiled out when you switch to release mode, saving a lot of space!
    /// </summary>
    /// <param name="text"></param>
    [Conditional("DEBUG")]
    public static void Print(string text)
    {
         Microsoft.SPOT.Debug.Print(text);
    }

    /// <summary>
    /// This Print statement will be compiled out when you switch to release mode, saving a lot of space!
    /// </summary>
    /// <param name="text"></param>
    [Conditional("DEBUG")]
    public static void VerbosePrint(string text)
    {
        if (Verbose) Microsoft.SPOT.Debug.Print(text);
    }

}
